import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;

import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class JDBCSelect {
    public static void main(String[] args) throws SQLException {
        DataSource dataSource = new MysqlDataSource();
        ((MysqlDataSource)dataSource).setUrl("jdbc:mysql://127.0.0.1:3306/test?characterEncoding=utf8&useSSL=false");
        ((MysqlDataSource)dataSource).setUser("root");
        ((MysqlDataSource)dataSource).setPassword("123456");
        Connection connection = dataSource.getConnection();
        //此处不输入条件了，直接查找所有记录
        String sql="select * from student";
        PreparedStatement statement = connection.prepareStatement(sql);
        //executeQuery()返回的是一个ResultSet对象，可以把这个对象视为是一个”临时表“
        ResultSet resultSet= statement.executeQuery();
        //遍历临时表，拿到里面的数据
        //resultSet 简单的当成一个类似于”迭代器“这样的东西来看待
        //next如果没有到达末尾，就是返回true,要继续循环
        //next如果到达末尾，就返回false,结束循环
        while (resultSet.next()){
            //在这里就可以取这一行的数据了
            //通过ResultSet里面的getXXX方法，来获取到这里指定的列
            //取id,id是整数，getInt
            int id =resultSet.getInt("id");
            //取 name,name是String,getString
            String name = resultSet.getString("name");
            System.out.println(id+": "+name);
        }
        resultSet.close();
        statement.close();
        connection.close();


    }
}
